23

» WarCraft 3 / Редактор моделей

Похожие вопросы:

ответ
в mdlvis можно модель увеличить
ответ
Открываешь РО, смотришь указанный путь модели. Открываешь редактором MPQ-архивов файлы War3.mpq, war3x.mpq, war3patch.mpq war3xlocal.mpq - не уверен.
ответ
вот сделал ее уменьшеной ,посори через модель эдитор как я эт сделал
если модел едитор неоткроет скачай нормальный
ответ
Советую скачать английскую W3ME 1.07. Там такой проблемы нет. Но если хочешь оставить эту, то оперируй папкой в непосредственной близости от проги. То есть прога будет работать с папками, которые находятся там же где и она. У меня была подобная проблема, приходилось перекидывать файлы с удобных мест, в одну папку. Это довольно раздражительно, потому советую скачать последнюю версию, она конечно на английском, но там слов то, как кот наплакал(с гулькин нос).

23

» WarCraft 3 / Опять не работает редактор кампаний

Похожие вопросы:

ответ
Maxsavin, я каждой карте из кампаний даю свой кэш, чтобы не перепуталось ничего.
Не знаю, что получилось бы, сделай я один кэш-файл на всю кампу и грузи карты потом не по порядку. Проверять не буду.
Кампания - это пак карт.
ответ
Но ведь сами по себе ошибки не происходят.
Причина подобного это А) - невнимательность либо твоя либо автора В) - программное обеспечение
Что бы в дальнейшем все было окей, просто сначала потести карту полностью что бы знать что и как должно быть, а потом вноси изменения, будь внимательней.
Еще советую связаться с автором и поговорить с ним об этой проблеме, или запросить у него еще 1 исходник да бы сверЯться с ним.
ответ
Варкрафтитель:
Absolute, Я знаю... Но он же... Уже изменен...
Вот что я тебе скажу. Иногда проще начать с нуля, чем разгребать ошибки. Просто создай новую кампанию , перекопируй старые триггеры. Всяко быстрее выйдет, чем несколько дней разбираться, да и качественнее.

23

» WarCraft 3 / Доп статы

Похожие вопросы:

ответ
Все, найден побочный вариант решения проблемы.
ответ
Чтобы делать уникальные спеллы, которые будут отличаться от сандартных, нужно использовать триггеры.
ответ
Фон кампании в стандарте - это отдельная модель сцены, которую мы видим. Сделать такое невероятно сложно по причине нехватки нужных редакторов с работой подобных моделей и в том числе отсутствие внятного освещения. Она имеет несколько анимаций, зачастую birth stand ну и разумеется настроенные и анимированные камеры.

23

» WarCraft 3 / Круг выбора

Похожие вопросы:

ответ
ручками попробуй выровнять их
ответ
Прикрепляю.
ответ
Графика - шкала выбора
ответ
Открой стандартную карту "Охотники" и посмотри там как сделать это, она на 4х игроков!
D:\Warcraft 3\Warcraft III\Maps\Scenario\(4)WarChasers.w3m
ответ
EnableSelect( true, false )
если я правильно понял
затем если нужно включить, то в конец ставится true

23

» WarCraft 3 / Не работает кампания

Похожие вопросы:

ответ
Maxsavin, берёшь бекап и продолжаешь работать в нём
на будущее будет урок
делай бекап после любого серьёзного изменения
ответ
Попробовал через MPQ, пишет, "Невозможно открыть. Была сделана попытка загрузить программу, имеющую неверный формат".
Проблему решил. Спасибо. Помогла программа Power Data Recovery.
Бесплатное ПО для восстановления удаленных данных, потерянных в результате различных проблем или ошибочных действий.
ответ
Я сам разобрался с проблемой. Конечно тут две новые появились, но на них забью уже:
  1. ИИ не нравился герой, из-за него вообще никто не нанимался.
  2. ИИ посчитал, что улучшив главное здание, он лишается главного здания, а значит нужно его снова строить. То есть, например, улучшив ратушу до крепости, он считает, что ратуши больше нет и необходимо построить ещё одну. Потом он крепость улучшит до замка, посчитает, что разрушили крепость, улучшит до крепости ратушу№2, снова потеряет ратушу и построит уже третью.
ответ
Короче: если ставить юнита, который относится к игроку, но самого игрока нет... То whosyourdaddy не будет работать на всех юнитах этого игрока.
ответ
Нашел ошибку:
В функции SuicideUnits (в самом низу) должно находиться строго 10 значений. У меня 9. Если приписать еще 0, то все работает.

23

» WarCraft 3 / Подскажите триггер

Похожие вопросы:

ответ
А ты её так не удалишь, нужно саму книжку удалять
ответ
Событие - Юнит получает предмет.
Условие - Тип предмета (предмет, которым манипулируют) = меч.
Действие - Цикл А от 1 до 6:
Если тип предмета, переносимого Триггерным юнитом в слоте А = меч И предмет в слоте А не равно предмет, которым манипулируют, то Герой - Выбросить предмет из слота А.
ответ
Steal nerves:
пример 1
пример 2
пример 3
пример 4
пример 5 (на скорую руку)
Если у вас классовые (мечи и топоры, щиты, доспехи и др). То можно разделить по уровням (уровни итемов вообще нигде не используется), например 1 уровень = мечи топоры копья и др оружия. 2уровень = доспехи 3 уровень = щиты ну и др. Можно будет проверять по уровням.
вот
ответ
VVelikolepniy:
Для удобства. Если его нет, добавь этот код:
function HandleCounter_Update takes nothing returns nothing
   local integer i = 0
   local integer id
   local location array P
   local real result=0
   loop
      exitwhen i >= 50
      set i = i + 1
      set P[i] = Location(0,0)
      set id = GetHandleId(P[i])
      set result = result + (id-0x100000)
   endloop
   set result = result/i-i/2
   loop
      call RemoveLocation(P[i])
      set P[i] = null
      exitwhen i <= 1
      set i = i - 1
   endloop
   call LeaderboardSetItemValue(udg_HandleBoardH,0,R2I(result))
endfunction

function HandleCounter_Actions takes nothing returns nothing
   set udg_HandleBoardH = CreateLeaderboard()
   call LeaderboardSetLabel(udg_HandleBoardH, "Счетчик")
   call PlayerSetLeaderboard(GetLocalPlayer(),udg_HandleBoardH)
   call LeaderboardDisplay(udg_HandleBoardH,true)
   call LeaderboardAddItem(udg_HandleBoardH,"Хэндлы",0,Player(0))
   call LeaderboardSetSizeByItemCount(udg_HandleBoardH,1)
   call HandleCounter_Update()
   call TimerStart(GetExpiredTimer(),0.05,true,function HandleCounter_Update)
endfunction

function InitTrig_HandleCounter takes nothing returns nothing
   call TimerStart(udg_TimerH,0,false,function HandleCounter_Actions)
endfunction
И создай переменную таймер с именем TimerH, и переменную таблицы лидеров с именем HandleBoardH
потом инициируй функцию InitTrig_HandleCounter
call InitTrig_HandleCounter()
ответ
что бы она сразу перешла в режим наведения.. а то выглядит как баг, из-за которого надо нажимать по 2 раза...
Gui -> Force player to use X key
Согласовываешь с хоткеем строительства
======================================
Бафф имеется в виду Бафф или Спецэффект?
Если спецэффект:
DestroyEffect(AddSpecialEffectTarget("Abilities\\Spells\\Human\\ThunderClap\\ThunderClapCaster.mdl",u,"origin"))
Если баф, то возможно будет работать так:
call UnitAddAbility(u, 'buff')

23

» WarCraft 3 / Видимость через декорацию

Похожие вопросы:

ответ
Спасибо всем за ответы и пояснения! Закрываю флудильню :с
ответ
Добавить модели в карту, расставить декорации в редакторе, удалить импортированные модели из карты перед самым релизом карты.
Profit.

23

» WarCraft 3 / Баги при создании модели

Похожие вопросы:

ответ
Если первый кадр анимации правильный, попробуйте удалить последний кадр анимации, потом скопировать кадр в её начале (Именно через команду "Кадры" - "Копировать (Ctrl + C)" !) и вставить его в конец. То же самое проделать с другой анимацией (Stand 2). Если это не поможет, тогда надо детально смотреть саму модель, что с ней не так. И ещё советую сохранять промежуточные версии модели, чтоб можно было сделать "откат", если возникнут ошибки.

23

» WarCraft 3 / Редактор объектов World Editor

Похожие вопросы:

ответ
IGOREIK, там четыре события на применение способности.
Пробуй разные, выбери, какое подойдёт лучше.
Вариант 8gabriel8 лучше. Немного дополню. Можно найти модель спецэффекта, который применяется во время включения способности. Посмотреть редакторами моделей (War3ME, например), какой там звук используется. И прописать импортированному звуку этот путь.

23

» WarCraft 3 / Постройка в области

Похожие вопросы:

ответ
The Dude, это несерьезно. Все вопросы описаны в большом количестве статей здесь, на нашем сайте - xgm.guru/p/wc3/articles. То, что перечисляешь не верх мастерства WE, а базовые знания. Материалов предостаточно. Успехов в обучении.
ответ
RedLegion, Эмм опен лтд в помощь, в гугле бан дали?
Утечек небудет если не юзать ГУИ, а сам процесс смены там примитивен - сокрытие всех юнитов игрока в области где доступно строительсво и создание ходящих и аьакующих аналогов, каждую новую волну. Прочее типо Ии, таблицы, способностей крипов реализуются по вкусу. В оригинальном лтд код не шибко крут, с утечками и ГУИ, но работает.
ответ
Ребят,всё было банально и просто.
В порядке строения был второй герой.
А второго героя я убрал(там есть вкладка с героями)

23

» WarCraft 3 / Где находится текстура кнопки?

Похожие вопросы:

ответ
скорее всего это
UI\Widgets\EscMenu\раса\раса-options-button-background-down.blp
UI\Widgets\EscMenu\раса\раса-options-button-background.blp
и подсветка кнопки
UI\Widgets\EscMenu\раса\раса-options-button-highlight.blp

23

» WarCraft 3 / Снижается скорость атаки

Похожие вопросы:

ответ
не стоит использовать ждать
создаём для юнита целочисленную переменную time
1 триггер
 Событие 
 	периодическое событие - каждые 0.1 сек.-
 Условие 
	time > 0
Действие  
	set time = time - 1
	если time == 0 то понизить уровень способности "незаметность" для "герой" до 1
	
2 триггер
 Событие
	боевая единица - юнит атакован
 Условие
	Атакующий юнит=герой или Атакованный юнит=герой
 Действие
	set time=30
	боевая единица - повысить уровень способности "незаметность" для "герой" до 2
не забудь закрыть вопрос (для этого выбери лучший ответ)
ответ
Steal nerves:
а почему так? отравленное оружие настраивает на сколька понизить в %. а сколько не ставь, все одно. мб что-то не правильное. абилка что ли бракованная

все врубился, понял формулу:
скорость = Текущая скорость - (Текущая скорость * процент снижения)
слишком большие проценты ставил, в результате не видел, и выходило ниже скорость. А так как стоят ограничения в скорости (мин = 150, макс = 400 в константах), то упиралась в минималку, и не видел изменения, из-за чего ошибочно начал теории строить.

в абилках "отравленное оружие" и "яд" дриады - поля "Данные - Фактор скорости атаки" и "Данные - Фактор скорости перемещения" - перепутаны, в "фактор скорости атаки" указывают понижение в процентах скорости движения, а в "фактор скорости перемещения" указывают понижение в процентах скорости атаки .
ответ
Steal nerves:
Отравленное оружие 'Aven'/'ACvs'/Яд 'Aspo' - Buff Placer, позволяющая замедлять противника при атаке, и наносить ему урон каждую секунду. При атаке накидывает на противника дебафф (яд). Этот дебафф остается на противнике несколько секунд, повторная атака ядом продлевает длительность дебаффа. Этот дебафф наносит ежесекундный урон, и понижает скорости атак, движения. Характеристики:
"Данные - Урона в секунду" - ежесекудно наносит урона.
ВНИМАНИЕ: поля "Данные - Фактор скорости атаки" и "Данные - Фактор скорости перемещения" - перепутаны, в "фактор скорости атаки" указывают понижение в процентах скорости движения, а в "фактор скорости перемещения" указывают понижение в процентах скорости атаки (1.00 = 100%, 0.5 = 50%, 1.5 = 150%, 100% или 0% - не будет понижать). Понижение скорости идет по формуле:
скорость = текущая скорость - (текущая скорость * процент понижения).
раскрыть
скорость движения юнита меняется от текущей скорости, и может упереться в ограничение установленных констант (мин = 150, макс = 400, если будет ниже скажем 100, то автоматом игра подправляет на 150). Скорость атаки изначально равняется 1 (100%), может по такой же формуле снижаться. например, снижение на 0.3. 1-(1*0.3)=0.7 - скорость атаки. или можно просто вычесть 1-0.3=0.7
У отравленного оружия есть два типа дебаффа: "Яд (не буферизуется)", "Яд (буферизуется)". Что это значит? Буферизация связана с настройкой "Тип буфера" (Тип буфера: здесь можно указать несколько галочек, всего их 4: "Урон" - суммирует ли ежесекудный эффект отравление, "Скорость боя" - удваивается ли коэффициент-множитель от скорости атаки (будет в несколько раз больше снижена скорость боя врага), "Движение" - удваивается ли коэффициент-множитель от скорости движения (будет в несколько раз понижена скорость противника), "Убить юнита" - при отравлении, типа может убить ядом). Эффекты от буфера складываются не повторной атакой одного юнита, а двух юнитов (если второй юнит с такой же абилкой нанесет атаку, то будут складываться эффекты). При буферизации урон суммируется, и коэффициенты скоростей складываются. Ежесекундный урон от отравления относится к типу атаки "заклинание", не понижается защитой, можно отнести к магическому урону

23

» WarCraft 3 / Nwu в Iccup

Похожие вопросы:

ответ
Анихак лаунчер заточен под борьбу с картой лича, поэтому не дает запускать все карты с мемхаком, пока есть возможноть это обойти - моя карта яркий пример, а так инфы подробной в паблик никто не сливал чтобы ракап не сделал апгрейд защиты...

23

» WarCraft 3 / Проблема в редакторе кампаний 2

Похожие вопросы:

ответ
Я сам разобрался с проблемой. Конечно тут две новые появились, но на них забью уже:
  1. ИИ не нравился герой, из-за него вообще никто не нанимался.
  2. ИИ посчитал, что улучшив главное здание, он лишается главного здания, а значит нужно его снова строить. То есть, например, улучшив ратушу до крепости, он считает, что ратуши больше нет и необходимо построить ещё одну. Потом он крепость улучшит до замка, посчитает, что разрушили крепость, улучшит до крепости ратушу№2, снова потеряет ратушу и построит уже третью.

23

» WarCraft 3 / Аура промахов

Принятый ответ
Похожие вопросы:

ответ
Карта со всеми утечками и описанием их.
Вместо проклятия банши можно юзать туман(не рекоменд) или безмолвие(там есть вроде бы шанс промаха).
Ещё можно сделать ауру на основе пламени феникса, которое действует на своих.
Юнит повреждён
  • урон меньше 1
  • источник - союзный герой
дать уклонение
вейт/таймер
убрать уклонение если триг юнит не имеет баффа пламени(длительность регулируем)
1
ответ
Extremator, ты сам только что ответил на вопрос
при включении армлета:
  • увеличиваем урон на 31
  • отнимаем 5 хп каждые 0,11 секунды
  • даём 4,17 силы каждые 0,1 секунды пока не будет 25 силы
  • давать 4 брони спустя 0,6 секунды
с промахами радика тоже всё просто
дами каст промахов на всех кто попал под действие радика
как работать с таймерами и дамикастом написано в статьях
или вы ждёте что мы за вас будем делать?
вот статьи
вот стол заказов

23

» WarCraft 3 / Проблема в редакторе кампаний

Похожие вопросы:

ответ
www.wc3c.net/tools/specs тут есть
NEW Frozen Throne expansion pack format of "war3map.w3u / w3t / w3b / w3d / w3a / w3h / w3q" The object data files (thanks PitzerMike):
ответ
Тест карты кампании не показывает нестандартных юнитов кампании. Нужно сохранять и запускать через игру вручную, если что.
ответ
Halian Izverg:
Может, все дело в переменных? Попробуй в настройках поставить галочку копировать переменные вместе с триггерами или, если не сработает для твоего глючного редактора, попробуй скопировать переменные вручную перед триггерами.
ответ
Это, разве что, исправить с помощью триггеров.
ответ
Я ловлю фаталы в своей кампании каждое 10 сохранение и переделываю утраченный прогресс каждый раз на протяжении последних 3 лет разработки. Не говори о том, как тебе будет сложно переделывать все заново. Не делал резервные копии - сам виноват. Теперь будешь делать.
А по факту ты не залил карту
И да, через любой mpq можно вытащить карту из файла кампании

23

» WarCraft 3 / Изменение высоты юнита

Похожие вопросы:

ответ
никак
Naadir, прежде чем советовать чтото другим проверь работает ли то что ты советуешь
ответ
Анимация - изменить высоту юнита (юнит, высота, скорость)
как-то так... или в Спецэффекты
ответ
Obelick:
нужно на время дать этому юниту способность "превратится в ворона", тогда он будет менять высоту триггерно.
Увы не работает, можно проиграть анимацию из раздела "Sea" (есть у юнитов анфибий), тогда они утопнут в грунте будто в воде, но увы не у всех моделей есть такое свойство, ну либо делать у модели вашего героя анимацию проваливания под землю.
ответ
Установи нужную высоту и измени тип юнита с пешего, на парящий. И установи минимальную высоту, как и сказал Lp666.
Что-то мы все затупили).

23

» WarCraft 3 / Скорость дамми юнита

Похожие вопросы:

ответ
Вот пример как это делать. Тут только общая логика, GUI.
ответ
koloff:
Объявляются переменные в начале.
local lightning l
call AddLightningEx(codeName, true, GetLocationX(where1), GetLocationY(where1), GetLocationZ(where1), GetLocationX(where2), GetLocationY(where2), GetLocationZ(where2))
set l = bj_lastCreatedLightning
ответ
способ 1
вешать структуру на таймер с помощью эксплойта (для тех кто не знает структура это число) а потом этим таймером вызывать нужную функцию спустя 0 секунд
плюсы:
простота
минусы:
требует добавлять иф на каждую новую функцию
второй способ
тоже самое что и 1 только на таймер вешается вдобавок название функции и таймер вызывает её экзекутом
вот моя библиотека по 2 способу и карта с примером
в библиотеке в самом верху есть небольшой док по 3 функциям
ответ
Чтобы не было анимация берите у медуза шит и выставить все на 0 вот и счастья через баф проверяете или что хотите!!

23

» WarCraft 3 / Типы Атаки и Защиты

Похожие вопросы:

ответ
Возможно, по средству скрещивания через триггер, видел в близовской карте Хеллоуин! Это что то типо ДОТЫ, только от близзард, есть по умолчанию в любом варике, старше версии 1.18. Легко открывается, триггер можно перезалить в свою карту.
ответ
BaHeK, есть вроде
только чукча не читатель
Talgar2, есть 3 варианта
  1. давай абилки которые дают эффект со степенью двойки(например чтобы получить +12 надо дать абилки +8 и +4)
  2. используй баг с итемами
  3. используй мемхак
ответ
Про области хз, вот именно их разве не через БД лучше, я же не знаю, как в создаваемой карте они называются - Пещера Тысячи Всхлипов или Пляж Огненных Уток...
Тут просто при входе в область писать ее при событии unit входит в область такую-то, легко же вроде даже на гуи...
А так атака ловится через GetUnitBaseDamage сложить с GetUnitGreenBonusDamage.
Скорость атаки через GetUnitAttackSpeed.
Броня через GetUnitArmor (я, правда, пока не мемхаковской пользуюсь, а другой, влом искать, но опытные мапмейкеры знают, если надо - спросить можно).
хпрег через GetUnitHPRegen + мб БД свое.
Мпрег через GetUnitMPRegen + мб БД свое.
Функции эти все тут github.com/DracoL1ch/WC3Memory/blob/master/war3map.j
По импорту мемхака все тут
Не так уж сложно.
Кому надо, в того мемхак в конце концов входит.
ответ
Так как ты это хочешь - нет, но можно добавить много типов атаки, если ты узнаешь про структуры
ответ
VovkaShyt, будет, хоть 10 хоть 0,01 будет снижаться количеством брони, а эти параметры - снижение от типа брони, сила тьмы игнорирует тип брони, а вот атака героя не игнорирует тип защиты зданий, здания, вспомните как долго в мили картах ломаются здания.

23

» WarCraft 3 / Видно всех на карте

Похожие вопросы:

ответ
Editor, игроков на карте 12
для каждого делать......
ответ
Вам сюда, господин хороший. Там есть ответы, практически, на все ваши вопросы.
ответ
Самый лучший способ - сразу писать руками .ai файлы
ответ
Пушистый, создал и удалил 100к юнитов
результат счётчика 1100
на всякий случай сообщу что 1100 меньше чем 100к
так же не стоит забывать что вар тупит с большими сериями (если подряд создаётся/удаляется много объектов)
и начинает добавлять после последнего удалённого хэндла хотя предыдущие свободны и не занимают память
при следующей пересборке таблицы это проходит
для того чтобы счётчик адекватно реагировал на это надо чтобы размер серии счётчика был больше чем размер серии создаваемых объектов
я слегка модифицировал твой счётчик
globals
    leaderboard udg_HandleBoard = null
endglobals
define sizehc=300;
function HandleCounter_Update takes nothing returns nothing
   local integer i = 0
   local integer id
   local location array P
   local integer result=0
   local integer min=-1;
   loop
      exitwhen i >= sizehc
      set i = i + 1
      set P[i] = Location(0,0)
      set id = GetHandleId(P[i])
      id-=0x100000
      if(min==-1){
        min=id;
      }
      if(id>result){
        result=id;
      elseif(id<min)
        min=id;
      }
   endloop
   if(result-min>sizehc){
    result=min;
   else
    result-=sizehc
   }
   loop
      call RemoveLocation(P[i])
      set P[i] = null
      exitwhen i <= 1
      set i = i - 1
   endloop
   call LeaderboardSetItemValue(udg_HandleBoard,0,result)
endfunction

function HandleCounter_Actions takes nothing returns nothing
   set udg_HandleBoard = CreateLeaderboard()
   call LeaderboardSetLabel(udg_HandleBoard, "Handle Counter")
   call PlayerSetLeaderboard(GetLocalPlayer(),udg_HandleBoard)
   call LeaderboardDisplay(udg_HandleBoard,true)
   call LeaderboardAddItem(udg_HandleBoard,"Handles",0,Player(0))
   call LeaderboardSetSizeByItemCount(udg_HandleBoard,1)
   call HandleCounter_Update()
   call TimerStart(GetExpiredTimer(),0.1,true,function HandleCounter_Update)
endfunction

function InitTrig_HandleCounter takes nothing returns nothing
   call TimerStart(CreateTimer(),0,false,function HandleCounter_Actions)
endfunction
у меня создаётся и удаляется более 2к юнитов сериями по 200
длинна серии счётчика задаётся в sizehc (в моём случае это 300)
вот триггер создания юнитов
function Trigcru takes nothing returns nothing
    local unit u= CreateUnit(Player(0),'hfoo',0,0,0)
    call RemoveUnit(u)
    set u=null
endfunction

function Trigcrul takes nothing returns nothing
    local integer i=0
    loop
        call Trigcru()
        exitwhen i==200
        set i=i+1
    endloop
    
     
endfunction

function Trig___________________________u_Actions takes nothing returns nothing
    local integer i=0
    loop
        call Trigcrul()
        call TriggerSleepAction(0.1)
        call DisplayTextToPlayer(GetLocalPlayer(),0,0,I2S(i))
        exitwhen i==10
        set i=i+1
    endloop
    set i=0
    call DisplayTextToPlayer(GetLocalPlayer(),0,0,"end")
    call TriggerSleepAction(1)
    
endfunction

//===========================================================================
function InitTrig___________________________u takes nothing returns nothing
    set gg_trg___________________________u = CreateTrigger(  )
    call TriggerRegisterTimerEventSingle( gg_trg___________________________u, 2 )
    call TriggerAddAction( gg_trg___________________________u, function Trig___________________________u_Actions )
endfunction